package FileIO.IOException;

import java.io.FileWriter;
import java.io.IOException;

/**
 * @Author: ylc
 * @Description:在jdk1.7之前使用try catch finally 处理流中的异常
 * @Date Created in 2022-04-25 20:29
 */
public class Demo1TryCatch {
    public static void main(String[] args) {
        FileWriter fw = null;
        try{
            //当赋值出现问题后，close时就会出现空指针异常
            fw = new FileWriter("w:\\a.txt",true);
            for (int i = 0; i <10 ; i++) {
                fw.write("HelloWorld"+i+"\r\n");
            }
        }catch(IOException e){
            //异常的处理逻辑
            System.out.println(e);
        }finally {
            //创建对象失败了,fw的默认值就是null,null是不能调用方法的,会抛出NullPointerException,需要增加一个判断,不是null在把资源释放
            if(fw!=null){
                try {
                    //fw.close方法声明抛出了IOException异常对象,所以我们就的处理这个异常对象,要么throws,要么try catch
                    fw.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }

        }
    }
}
